from flask import Flask, render_template
import pandas as pd

app = Flask(__name__)


def read_data():
    return pd.read_csv("F:/所有作业/python数据分析/week13/pandas-flask/movies.dat",
                       sep="::",
                       engine="python",
                       header=None,
                       names="序号::电影名称::电影类型".split("::")
                       )


@app.route('/get_movies')
# 视图函数
def get_movies():
  # 调用读取数据的方法
    df = read_data()
    # 筛选数据目标（处理数据）
    df_movies = df[df["电影类型"].str.contains('Animation')]
    return render_template(
        "movies_info.html",
        movies_data=df_movies.to_html(classes="movies", index=False),
    )


# 读独角兽数据
def read_unicorn_data():
    return pd.read_csv ("F:\所有作业\python数据分析\week13\pandas-flask\hurun.tsv", encoding = "utf8", sep="\t")

@app.route('/get_unicorn')
def get_unicorn():
    df = read_unicorn_data()
    df_投资公司 = df["部分投资机构"].str.split('、', expand=True).stack().reset_index(level=1,drop=True).rename('投资公司')
    dict_合并 = {
                "序号":df_投资公司.index,
                "投资公司":df_投资公司.values}
    df_合并=pd.DataFrame(dict_合并)
    df_创始人合并 =df[["企业名称","掌门人/创始人"]]
    df_创始人合并.index.name="序号"
    df_创始人 =pd.merge(df_创始人合并.drop('掌门人/创始人', axis=1),\
                     df['掌门人/创始人'].str.split(',', expand=True).stack().reset_index(level=1,drop=True).rename('掌门人/创始人'),\
                     on="序号")
    df_投资公司 = pd.merge(df_创始人,df_合并,on="序号")
    return render_template(
        "unicorn.html",
        unicorn_data=df_投资公司.to_html(classes="unicorn", index=False),
    )



if __name__ == '__main__':
    app.run(
        debug=True
    )
